DLL knihovny a zpetne volane funkce

Otázka od: vponecha@volny.cz

31. 8. 2004 10:49

Ahoj,

Potrebuji predavat z DLL knihovny nejake informace zdrojove
aplikaci. To znamena, ze volam z knihovny aplikaci ve ktere je
knihovna nalinkovana.

Nasel jsem nejake inf, ale je to napsane dost obsirne a nekterym
vecem v kodu nerozumim. Nemate nekdo nejake priklady dobre na
pochopeni?

Popripade, pokud budete mit nejake odkazy na internet nebo nazvy
knih ktere to dobre popisuji, beru vsechno.

Diky,

Vl.

--
Hrajte s nami o 1000 Kc kazdy den! Pripojte se pres VOLNY a
tipujte teplotu na vybranem miste v Ceske republice. Uzijte si
leto s VOLNY na strankach http://soutez.volny.cz.


Odpovedá: Ing. Igor Kapoun

31. 8. 2004 11:28

Musis nadefinovat v hlavnim programu procedutu
a ukazatel na ni predat napr. pri inicializaci DLL
kihovny teto knihovne.
V samotne DLL pak uz proceduru jen zavolas
(samozrejme, ze musi byt v DLL i v hlavni aplikaci
nadefinovan stejny typ teto procedury).

Igor

----- Original Message -----
From: <vponecha@volny.cz>
To: <delphi-l@clexpert.cz>
Sent: Tuesday, August 31, 2004 11:48 AM
Subject: DLL knihovny a zpetne volane funkce


> Ahoj,
>
> Potrebuji predavat z DLL knihovny nejake informace zdrojove
> aplikaci. To znamena, ze volam z knihovny aplikaci ve ktere je
> knihovna nalinkovana.
>
> Nasel jsem nejake inf, ale je to napsane dost obsirne a nekterym
> vecem v kodu nerozumim. Nemate nekdo nejake priklady dobre na
> pochopeni?
>
> Popripade, pokud budete mit nejake odkazy na internet nebo nazvy
> knih ktere to dobre popisuji, beru vsechno.
>
> Diky,
>
> Vl.
>
> --
> Hrajte s nami o 1000 Kc kazdy den! Pripojte se pres VOLNY a
> tipujte teplotu na vybranem miste v Ceske republice. Uzijte si
> leto s VOLNY na strankach http://soutez.volny.cz.
>
>
>
>


Odpovedá: Ing. Igor Kapoun

31. 8. 2004 11:56

> Potrebuji predavat z DLL knihovny nejake informace zdrojove
> aplikaci. To znamena, ze volam z knihovny aplikaci ve ktere je
> knihovna nalinkovana.

Musis nadefinovat v hlavnim programu procedutu
a ukazatel na ni predat napr. pri inicializaci DLL
kihovny teto knihovne.
V samotne DLL pak uz proceduru jen zavolas
(samozrejme, ze musi byt v DLL i v hlavni aplikaci
nadefinovan stejny typ teto procedury).

Igor


Odpovedá: p.sestak@corag.sk

31. 8. 2004 12:02

Pokial sa dobre pamatam, tak loadlibrary + getprocaddress funguje rovnako
dobre
aj na exe a nie je obmedzeny len na dll moduly. Takze ak vies meno
aplikacie
staci ti z nej exportovat funkcie (tak isto ako v dll) a tieto potom
dynamicky lokalizovat
cez getprocaddress. Jedine co ti chyba je handler modulu z ktoreho chces
ziskat
adresu funkcie - to ziskas pomocou spominanej
loadlibrary('c:\meno\Aplikacie.exe').


Pavol Sestak



> Potrebuji predavat z DLL knihovny nejake informace zdrojove
> aplikaci. To znamena, ze volam z knihovny aplikaci ve ktere je
> knihovna nalinkovana.
>